package com.youngjun.common.security.service;

import org.springframework.security.access.AccessDeniedException;
import org.springframework.security.core.Authentication;
import org.springframework.security.core.AuthenticationException;

import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;

public interface AuthCallbackService {

    void loginSuccess(HttpServletRequest request,HttpServletResponse response,Authentication authentication);

    void loginFailure(HttpServletRequest request,HttpServletResponse response,AuthenticationException e);

    void logoutSuccess(HttpServletRequest request, HttpServletResponse response, Authentication authentication);

    void authEntryPoint(HttpServletRequest request,HttpServletResponse response,AuthenticationException e);

    void accessDenied(HttpServletRequest request, HttpServletResponse response, AccessDeniedException e);

}
